import java.util.*;
//奇数偶数都加入sum，后面再减
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class code3_2 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        //怎么拿到最大的数->堆
        int n = in.nextInt(),k = in.nextInt();
        long sum = 0;
        //创建大根堆
        PriorityQueue<Integer> priorityQueue = new PriorityQueue<>((a,b)->b-a);
        for(int i=0;i<n;i++) {
            long x = in.nextLong();
            //奇数偶数都加入sum
            sum+=x;
            //偶数才加入堆
            if(x%2==0) priorityQueue.add((int)x);
        }
        //进行操作
        while(!priorityQueue.isEmpty()&&k!=0) {
            long x = priorityQueue.poll();
            x /= 2;
            sum -= x;
            if(x%2==0) priorityQueue.add((int)x);
            k--;
        }
        System.out.print(sum);
    }
}